package com.miplus.ccrm.core.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import com.miplus.ccrm.core.controller.vo.LabelResVo;
import lombok.Data;

/**
 * 
 * @TableName cfg_rule_conditions
 */
@TableName(value ="cfg_rule_conditions")
@Data
public class CfgRuleConditions implements Serializable {
    /**
     * 条件ID
     */
    @TableId(type = IdType.AUTO)
    private Long conditionId;

    /**
     * 策略步骤ID
     */
    private Long ruleStepId;

    /**
     * 条件编码。在同一个步骤中唯一
     */
    private String conditionCode;

    /**
     * 参数变量
     */
    private Long varId;

    /**
     * 比较ID
     * 1 = 等于
     * 2 != 不等于
     * 3 like 含有
     * 4 like 开始于
     * 5 like 终于
     * 6  > 大于
     * 7  < 小于
     * 8 >= 大于等于
     * 9  <= 小于等于
     * 10 in 包括
     * 11 not in 不包括
     * 12 exists 存在
     * 13 not exists 不存在
     */
    private Integer op;

    /**
     * 操作的SQL方法
     * = 等于
     * != 不等于
     * like 包含 like
     * like 开始于
     * like 终于
     *  > 大于
     *  < 小于
     *  >= 大于等于
     *  <= 小于等于
     * in 包括
     * not in 不包括
     * exists 存在
     * not exists 不存在
     */
    private String opCode;
    /**
     * 参数值
     */
    private String opVal;

    /**
     * 第二个参数值
     */
    private String opVal2;

    /**
     * sql语句
     */
    private String conditionSql;

    private String inputType;

    /**
     * 字段类型。
     */
    private String fieldType;

    /**
     * 模板ID
     */
    private String msgid;

    @TableField(exist = false)
    private List<LabelResVo>  selectValueList=new ArrayList<>();

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}